package com.listener;

import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener;

import java.util.HashMap;
import java.util.Map;

/**
 * 监听器的用法，需要集成TaskListener
 */
public class DemoListener implements TaskListener {
    public void notify(DelegateTask delegateTask) {
        String  str = delegateTask.getName();
        Map<String,Integer> map = new HashMap<String,Integer>();
        map.put("项目经理",1);
        map.put("总监",2);
        map.put("财务",3);
        map.put("哈哈哈",4);

        //数据库中获取数据
        switch (map.get(str)){
            case 1 :xmjl(delegateTask);break;
            case 2 :xmzj(delegateTask);break;
            case 3 :xmcw(delegateTask);break;

        }



    }


    public void xmjl(DelegateTask delegateTask){
        System.out.println("activiti"+delegateTask.getName());
        delegateTask.setAssignee("listener-xmjl1");
    }

    public void xmzj(DelegateTask delegateTask){
        System.out.println("activiti"+delegateTask.getName());
        delegateTask.setAssignee("listener-xmzj1");
    }

    public void xmcw(DelegateTask delegateTask){
        System.out.println("activiti"+delegateTask.getName());
        delegateTask.setAssignee("listener-xmcw1");
    }
}
